
function ClassFromFile(filePath, class, t)
	local  temp = class or {}
	t = t or _G
	for i = string.len(filePath), 1, -1 do
		if string.byte(filePath, i) == 47 then
			local fileName = string.sub(filePath, i + 1)
			t[fileName] = temp
			return temp
		end
	end

	t[filePath] = temp
	return temp
end

function NewClass(baseClass, newClass)
	newClass = newClass or {};
	newClass.super = baseClass;
 	setmetatable(newClass, baseClass);
 	baseClass.__index = baseClass;
 	return newClass;
end

function New(class, me)
	me = me or {};
 	setmetatable(me, class);
 	
 	local a = rawget(class, "__index")
 	if not a then
 		rawset(class, "__index", class)
 	end

 	if me._init then
 		me:_init()
 	end
 	return me;
end
